Merging projects

When merging projects you can reuse resources and nodes you created in another project. Merging projects allows you to import a complete project or only selected resources and nodes. During merging Kanzi provides conflict resolution.

Kanzi provides these options for bringing content from other projects:

Merging projects

To merge projects:

  1. Select File > Import > Merge Project, select the project you want to merge (source project) to the currently open project (target project), and click Open.
    The Project Merge dialog opens.
  2. In the Project Merge dialog set:
  3. Select the checkboxes next to the items you want to merge from the source to target. Depending on the existence of the selected item in the target project, the name of the item is written using:
  4. If you are merging projects with data sources that use locally stored data, see Merging projects with data sources that use locally stored data.
  5. If you are merging projects that contain Kanzi Engine Plugins, see Merging projects with Kanzi Engine plugins.
  6. Resolve conflicts. When your target and source both contain the same item and properties of this item differ, you have to decide which properties you want to keep:

    Once you have resolved all the conflicts, the font color of the item name in the source tree changes to green.

  7. Click Merge.
    Kanzi Studio merges the source with the target by placing the content of source into the corresponding places of the target.

Merging projects with Kanzi Engine plugins

When you merge projects with Kanzi Engine plugins that have the same name, but different component types, data sources, messages, or property types, you cannot resolve the conflict in the Project Merge tool.

To merge projects with conflicting Kanzi Engine plugins:

  1. In Kanzi Studio open the project which does not use the correct version of the Kanzi Engine plugin.
  2. In the Library > Kanzi Engine Plugins right-click the plugin and select .
  3. Merge the Kanzi Studio projects. See Merging projects.

Merging projects with data sources that use locally stored data

Typically the data in a data source you merge to a Kanzi Studio project is provided by a server to which your application connects. If, however, the source files of the data source you want to merge are stored locally in the source project, you must manually copy them from <SourceProjectName>/Application/bin to <TargetProjectName>/Application/bin. If you do not copy the data files to the target project, the Preview fails to start.

Merging projects using version control tools

After configuring your version control tool you can use the Kanzi merge tool for Kanzi project updating and merging. For the integration Kanzi requires a version control tool that provides the necessary parameters to the Kanzi merge tool.

Example of parameter types Description
MINE The parameter for the source project.
THEIRS The parameter for the target project.
BASE The parameter for the base project.
MERGED The parameter for the merged project.

Integrating the Kanzi merge tool with a version control tool

To integrate the Kanzi merge tool with a version control tool:

  1. Configure your version control tool to use the Kanzi merge tool (<KanziInstallation>/Studio/Bin/KanziMergeTool.bat) for .kzproj files.
  2. Pass to your version control tool the absolute path to the KanziStudio.exe. For example, C:\Program Files\Rightware\Kanzi\Studio\Bin\KanziStudio.exe.
  3. Set the version control tool parameters for the Kanzi merge tool. For example, these parameters can be called MINE, THEIRS, BASE, MERGED.

Integrating the Kanzi merge tool with SVN version control software

To integrate the Kanzi merge tool with SVN version control software, add Kanzi merge tool as an external program for merging files with the .kzproj extension.
For example, if you are using Tortoise SVN, in TortoiseSVN select SVN > Settings > External Programs > Merge Tool > Advanced and set:

Integrating the Kanzi merge tool with Git version control software

To integrate the Kanzi merge tool with Git version control software, add Kanzi merge tool as an external program for merging files with the .kzproj extension.

For example, if you are using TortoiseGit:

  1. Make a copy of the <KanziInstallation>/Studio/Bin/KanziMergeTool.bat and name it KanziMergeToolGit.bat.
  2. Open the KanziMergeToolGit.bat file and remove these lines to remove references to SVN version control software:
    dir %MINE%
    svn resolve --accept working %MINE%
    )
  3. In TortoiseGit select Settings > Diff Viewer > Merge Tool > Advanced and set:

See also

Importing projects

Merging 3D assets

Projects

Using version control systems with Kanzi